Dynomotion

Group: DynoMotion Message: 13075 From: cnc_machines Date: 4/5/2016
Subject: Error Correction

Greetings,


I am using a KStep with encoder feedback. Axis modes are "Encoder" and "CL Step". I have values of 0.01 for my "P" and "I" values. Also a very large max following error.


I would like to be able to disable the KStep board while the axis is in motion - It seems that the encoder knows that the position is no longer correct. When I reenergize the KStep I would like it to move automatically to the position it was commanded to before the power was broken.


For Example:


Move(3,5000); 

While(!Checkdone(3));


I kill power as it is moving to 5000. I was expecting that the controller know that I never reached 5000 so it would just pause until power returns and the encoder indicates that it has reached the destination.


Does anyone have suggestions on how I could get this to work?


Thanks,


Scott



Group: DynoMotion Message: 13077 From: TKSOFT Date: 4/5/2016
Subject: Re: Error Correction
Hi Scott,

It isn't normally reasonable to expect to be able to kill power while performing a motion and then simply re-apply power and have everything resume without issue. Normally the axes would deviate from the desired path during the power down, and then a new trajectory would need to be computed to re-accelerate back up to speed in a controlled manner and to get back on path.

If the system is allowed to continue to command the motor at speed to attempt to correct the error while power is off, then when power comes back on there is likely to be a violent reaction and a motor stall.

Normally we set a small following error so as soon as power is lost, a following error occurs which disables the axes and halts the commanded motion. Later after power is restored the Axis can be re-enabled to wherever the encoder says the axes are and then a new motion can be commanded.

I suppose you could do something like have a User Program command a FeedHold when the following error exceeds some threshold. Then set the P Gain=0 and the Max Error setting so that Servo Feedback only commands a slow correction at a speed slow enough that the motor won't stall on power up. Then releases FeedHold if the Following Error becomes close to zero.

Regards
TK






On 2016-04-05 12:47, cnc_machines@... [DynoMotion] wrote:
> Greetings, > > I am using a KStep with encoder feedback. Axis modes are "Encoder" and > "CL Step". I have values of 0.01 for my "P" and "I" values. Also a > very large max following error. > > I would like to be able to disable the KStep board while the axis is > in motion - It seems that the encoder knows that the position is no > longer correct. When I reenergize the KStep I would like it to move > automatically to the position it was commanded to before the power was > broken. > > For Example: > > Move(3,5000); > > While(!Checkdone(3)); > > I kill power as it is moving to 5000. I was expecting that the > controller know that I never reached 5000 so it would just pause until > power returns and the encoder indicates that it has reached the > destination. > > Does anyone have suggestions on how I could get this to work? > > Thanks, > > Scott > >